.TH DECODE_APRS  1

.SH NAME
decode_aprs \- Convert APRS raw data to human readable form.


.SH SYNOPSIS
.B decode_aprs 
[ \fItext-file\fR ]
.RS
.P
\fItext-file\fR should contain AX.25 packets in the standard monitoring format or
as a series two digit hexadecimal numbers.
If the first number is 00 or c0, it will be treated as a KISS frame.
If no file specified, data will be read from stdin.
.P
.RE

.SH DESCRIPTION
\fBdecode_aprs\fR is useful for understanding sometimes obscure APRS packets and finding errors.


.SH OPTIONS
None.



.SH EXAMPLES

You see something like this show up on your screen:
.P
.RS
M0XER-3>APRS63,WIDE2-1:!/4\\;u/)K$O J]YD/A=041216|h`RY(1>q!(|
.RE
.P
What does it mean?  If you haven't spent a lot of time studying the APRS protocol
specification, most of it probably looks like random noise.
Pipe it into decode_aprs to find out.
.P
.RS
.B echo 'M0XER-3>APRS63,WIDE2-1:!/4\\\\;u/)K$O J]YD/A=041216|h`RY(1>q!(|' | decode_aprs
.RE
.P

http://www.findu.com/cgi-bin/errors.cgi has a never-ending collection of packets 
with errors.  Sometimes it's  not  obvious what is wrong with them.  
Dire Wolf will usually tell you what is wrong.  First,
cut-n-paste the bad packets into a text file.  Here a few examples:
.P
.RS
.nf
n2cma>APRS,TCPIP*,qAC,SEVENTH:@212127z43.2333n/77.1w_338/002g001t025P000h65b10208.wview_5_19_0
.P
K0YTH-10>APNU3B,NULL,qAR,K0DMF-10:!4601.5NS09255.52W#PHG6360/W2,MNn 444.575
.P
00 82 a0 ae ae 62 60 e0 82 96 68 84 40 40 60 9c 68 b0 ae 86 40 e0 40 ae 92 88 8a 64 63 03 f0 3e 45 4d 36 34 6e 65 2f 23 20 45 63 68 6f 6c 69 6e 6b 20 31 34 35 2e 33 31 30 2f 31 30 30 68 7a 20 54 6f 6e 65
+.fi
.RE
.P
If  you  simply  fed  this  into decode_aprs, it would complain about the 
lower case in qA-something, added by the IGate, in the via path.  
We can take it out with something like this:
.P
.RS
.B cat findu-errors.txt | sed -e 's/,qA.*:/:/' | decode_aprs
.RE
.P
In the first case, we get,
.P
.RS
Address has lower case letters. "n2cma" must be all upper case.
.RE
.P
After changing the source address to upper case, there are other issues.  Identifying them is left as an exercise for the reader.
.P
In the second example,
.P
.RS
.PD 0
Invalid character in latitude.  Found 'N' when expecting 0-9 for hundredths of minutes.
.P
Invalid character in longitude.  Found '9' when expecting 0 or 1 for hundreds of degrees.
.PD
.RE

.P
In the third example,
.P
.RS
.PD 0
Warning: Lower case letter in Maidenhead locator.  Specification requires upper case.
.P
Digi2 Address, " WIDE2-1" contains character other than letter or digit in character position 1.
.PD
.RE



.SH SEE ALSO
More detailed information is in the pdf files in /usr/local/share/doc/direwolf, or possibly /usr/share/doc/direwolf, depending on installation location.

Applications in this package: aclients, atest, decode_aprs, direwolf, gen_packets, ll2utm, log2gpx, text2tt, tt2text, utm2ll

